package cn.tedu.myweibo.pojo.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Pattern;

/**
 * 注册功能的DTO类
 */
@Data
public class UserRegDTO {
    /*
        1.ApiModelProperty注解: 添加在POJO类属性上,用来对参数进行描述;
          value指定参数名称,required指定该参数是否必须,example参数指定示例值;
     */
    /*
     * 1.@NotNull注解: 不允许为null值,message参数表示自定义提示消息;
     * 2.@NotEmpty注解: 不允许为空字符串,同时不允许为null;
     * 3.@NotBlank注解: 不允许为空白串、空字符串和null;
     * 4.@Size注解: 限制字符串类型的长度范围,指定min和max参数值;
     * 5.@Pattern注解: 使用正则表达式进行校验;
     */
    //@NotNull(message = "用户名不能为null")
    //@NotEmpty(message = "用户名不不能为空字符串,也不能为null")
    //@NotBlank(message = "用户名不不能为空白串,空字符串,也不能为null")
    //@Size(min = 6, max = 12, message = "用户名必须在6-12位之间")
    @Pattern(regexp = "^[\u4e00-\u9fa5]{0,7}[a-zA-Z]{0,14}$", message = "用户名不能超过7个汉字或14个字符")
    @ApiModelProperty(value = "用户名", required = true, example = "Tony")
    private String username;
    @ApiModelProperty(value = "密码", required = true, example = "123456")
    private String password;
    @ApiModelProperty(value = "昵称", required = true, example = "tony")
    private String nickname;
}







